This page last changed on Nov 21, 2006 by juanca.

Un pretty printer es un Traductor que toma una frase perteneciente a un lenguaje y la convierte a una representación más legible, más fácil de entender, o más agradable.

En esta etapa de proyecto deben construir un formateador para un subconjunto del lenguaje de programación C a partir de los la definición léxica y sintáctica del lenguaje TinyC provista por ANTLR.

El programa a construir debe ser capaz de leer un archivo contentivo de un programa en TinyC de la entrada estándar, y producir en la salida estándar un texto en HTML en el cual el programa, al ser visto en un visualizador de HTML (browser), produzca el siguiente efecto:

  1. Todas las palabras reservadas y todos los operadores deben aparecer en negrilla.
  2. Todos los operadores excepto los paréntesis, corchetes y comas, deben estar antecedidos de un espacio en blanco y seguidos de un espacio en blanco.
  3. Las comas deben estar seguidas de un espacio en blanco.
  4. Todos los literales tipo string y char deben aparecer en magenta.
  5. Los demás literales deben aparecer en azul.
  6. Los comentarios deben aparecer en itálica y en color verde
  7. Todos los bloques de instrucciones deben comenzar por un "{" y terminar con un "}", ambos en su propia línea.
  8. Las instrucciones dentro de cada bloque deben estar indentadas por cuatro espacios en blanco.

Dicho programa debe ser construido generando un árbol de sintaxis abstracta (AST) anotando la definición de TinyC provista por ANTLR, y creando una nueva definición sintáctica sobre el AST con las acciones semánticas necesarias.


tinyc.zip (application/zip)
Document generated by Confluence on Oct 04, 2010 11:25